#ifndef WINDOW_H
#define WINDOW_H

class IslandApp;


#include <windows.h>

class Window
{
	public:
		Window();
		void initialise(HINSTANCE hIstance, HWND& mWnd, int nCmdShow, int x, int y, int width, int height, IslandApp* app_ref);


		static LRESULT CALLBACK WindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam );
		
		~Window() {}
		
		static void setInstance(Window* win) { pWnd = win; }
		void setInputReady(bool val); 

		int getX() const { return x; }
		int getY() const { return y; }

	private:
		bool input_ready;
		
		IslandApp* app;

		static Window* pWnd;

		bool InitWindow(HINSTANCE hInstance,HWND& mWnd, int nCmdShow, int x, int y, int width, int height) const;
		
		LRESULT CALLBACK wndWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam );
		
		int x;
		int y;
};


#endif